Binary Operators | ||
Symbol | Example | Explanation |
** |
a**b |
exponentiation |
* |
a*b |
multiplication |
/ |
a/b |
division |
% |
a%b |
* modulo |
+ |
a+b |
addition |
- |
a-b |
subtraction |
== |
a==b |
equality |
!= |
a!=b |
inequality |
& |
a&b |
* bitwise AND |
^ |
a^b |
* bitwise exclusive OR |
| |
a|b |
* bitwise inclusive OR |
&& |
a&&b |
* logical AND |
|| |
a||b |
* logical OR |
?: |
a?b:c |
* ternary operation |
Logical AND (&&) and OR (||) short-circuit the way they do in C. That is, the second && operand is not evaluated if the first is false; the second || operand is not evaluated if the first is true.
The ternary operator evaluates its first argument (a). If it is true (non-zero) the second argument (b) is evaluated and returned, otherwise the third argument (c) is evaluated and returned.